package com.yiduo.outpost.core.security;

import org.springframework.security.core.Authentication;

/**
 * @author yw
 */
public interface TokenProvider {

    String USER_ID_KEY = "uid";
    String USER_ROLE_KEY = "role";
    String USER_TOKEN_KEY = "token";



    /**
     * token解析为 {@code Authentication} 对象
     *
     * @param token token, 如jwt
     * @return 用户认证会话对象
     */
    Authentication getAuthentication(String token);

    /**
     * 校验token是否合法
     */
    default boolean validateToken(String token) {
        return true;
    }
}
